[IA64] Fix io access from the inside of UC physical address
authorAlex Williamson <alex.williamson@hp.com>
Fri, 7 Mar 2008 20:26:40 +0000 (13:26 -0700)
committerAlex Williamson <alex.williamson@hp.com>
Fri, 7 Mar 2008 20:26:40 +0000 (13:26 -0700)
I/O access from the inside of UC physical address causes a panic on HVM.

Singed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
xen/arch/ia64/vmx/vmmu.c

index 8097533403fb131ba2e669994d6e27bd4d7283cc..671c503e17d3932d6ba490d60102b86199254fb2 100644 (file)
@@ -160,7 +160,7 @@ fetch_code(VCPU *vcpu, u64 gip, IA64_BUNDLE *pbundle)
 
  again:
     if ( !(VCPU(vcpu, vpsr) & IA64_PSR_IT) ) {   // I-side physical mode
-        gpip = gip;
+        gpip = gip & ~(1UL << 63);     // clear UC bit
     }
     else {
         tlb = vtlb_lookup(vcpu, gip, ISIDE_TLB);